This invention is in the field of digital communications, and is more specifically directed to timing synchronization in such communications involving multiple frequency bands.
An important and now popular modulation standard for digital subscriber line (DSL) communications is Discrete Multitone (DMT) modulation. According to DMT technology, the available spectrum is subdivided into many subchannels (e.g., 256 subchannels of 4.3125 kHz). Each subchannel is centered about a carrier frequency that is phase and amplitude modulated, typically by Quadrature Amplitude Modulation (QAM), in which each symbol value is represented by a point in the complex plane; the number of available symbol values depends, of course, on the number of bits in each symbol. During initialization of a DMT communications session, the number of bits per symbol for each subchannel (i.e., the “bit loading”) is determined according to the noise currently present in the transmission channel at each subchannel frequency and according to the transmit signal attenuation at that frequency. For example, relatively noise-free subchannels may communicate data in ten-bit to fifteen-bit symbols corresponding to a relatively dense QAM constellation (with short distances between points in the constellation), while noisy channels may be limited to only two or three bits per symbol (to allow a greater distance between adjacent points in the QAM constellation). Indeed, some subchannels may not be loaded with any bits, because of the noise and attenuation in those channels. In this way, DMT maximizes the data rate for each subchannel for a given noise condition, permitting high speed access to be carried out even over relatively noisy twisted-pair lines.
FIG. 1 illustrates the data flow in conventional DSL communications, for a given direction (e.g., downstream, from a central office “CO” to customer premises equipment “CPE”). Typically, each DSL transceiver (i.e., both at the CO and also in the CPE) includes both a transmitter and a receiver, so that data is also communicated in the opposite direction over transmission channel LP according to a similar DMT process. As shown in FIG. 1, the input bitstream that is to be transmitted, typically a serial stream of binary digits in the format as produced by the data source, is applied to constellation encoder 11 in a transmitting modem 10. Constellation encoder 11 fundamentally groups the bits in the input bitstream into multiple-bit symbols that are used to modulate the DMT subchannels, with the number of bits in each symbol determined according to the bit loading assigned to its corresponding subchannel, based on the characteristics of the transmission channel as mentioned above. Encoder 11 may also include other encoding functions, such as Reed-Solomon or other forward error correction coding, trellis coding, turbo or LDPC coding, and the like. The symbols generated by constellation encoder 11 correspond to points in the appropriate modulation constellation (e.g., QAM), with each symbol associated with one of the DMT subchannels. Following constellation encoder 11, shaping function 12 derives a clip prevention signal included in the encoded signals to be modulated, to reduce the peak-to-average ratio (PAR) as transmitted as described in copending application Ser. No. 10/034,951, filed Dec. 27, 2001, published on Nov. 28, 2002 as U.S. Patent Application Publication No. 2002/0176509, incorporated herein by this reference.
Referring back to FIG. 1, the encoded symbols are applied to inverse Discrete Fourier Transform (IDFT) function 13, which associates each symbol with one subchannel in the transmission frequency band, and generates a corresponding number of time domain symbol samples according to the Fourier transform. As known in the art, cyclic insertion function 14 appends a cyclic prefix or suffix (generically, affix), to the modulated time-domain samples from IDFT function 13, and presents the extended block of serial samples to parallel-to-serial converter 15. In ADSL2+ and VDSL, cyclic prefix and suffix insertion, and transmitter windowing, are combined into a single cyclic insertion function 14, which preferably operates on the modulated data in parallel form as shown; in ADSL, cyclic insertion function 14 preferably follows serial-to-parallel conversion, and simply prepends a selected number of sample values from the end of the block to the beginning of the block. Following conversion of the time-domain signal into a serial sequence by converter 15, and such upsampling (not shown) as appropriate, digital filter function 16 then processes the digital datastream in the conventional manner to remove image components and voice band or ISDN interference. The filtered digital datastream signal is then converted into the analog domain by digital-to-analog converter 17. After conventional analog filtering and amplification (not shown), the resulting DMT signal is transmitted over a channel LP, over some length of conventional twisted-pair wires, to a receiving DSL modem 20, which, in general, reverses the processes performed by the transmitting modem to recover the input bitstream as the transmitted communication.
At receiving DSL modem 20, analog-to-digital conversion 22 then converts the filtered analog signal into the digital domain, following which conventional digital filtering function 23 is applied to augment the function of pre-conversion receiver analog filters (not shown in FIG. 1). A time domain equalizer (TEQ) (also not shown in FIG. 1) may apply a finite impulse response (FIR) digital filter that effectively shortens the length of the impulse response of the transmission channel LP. Serial-to-parallel converter 24 converts the datastream into a number of samples (2N) for application to Discrete Fourier Transform (DFT) function 27, after removal of the cyclic extension from each received block in function 25. At DFT function 27, the modulating symbols at each of the subchannel frequencies are recovered by reversing the IDFT performed by function 12 in transmission. The output of DFT function 27 is a frequency domain representation of the transmitted symbols multiplied by the frequency-domain response of the effective transmission channel. Frequency-domain equalization (FEQ) function 28 divides out the frequency-domain response of the effective channel, recovering the modulating symbols. Constellation decoder function 29 then resequences the symbols into a serial bitstream, decoding any encoding that was applied in the transmission of the signal and producing an output bitstream that corresponds to the input bitstream upon which the transmission was based. This output bitstream is then forwarded to the client workstation, or to the central office network, as appropriate for the location.
In this example, the transmissions are described as taking place between a central office (CO) and the customer premises equipment (CPE). In many modem DSL installations, however, the CO communicate via twisted-pair lines over the entire distance to the subscriber, but rather transmits and receives along a high bandwidth communications facility, such as a fiber optic facility, to and from a remote location that is commonly referred to as an optical network unit (ONU). A well-known example of this arrangement is the Fiber-To-The-Curb (FTTC) infrastructure, in which ONUs are deployed in the customer neighborhoods. On one side, the ONUs communicate with the CO via the fiber optic facility, and on the other side, the ONUs communicate with CPE installations in its physical neighborhood by way of DMT modulated signals over twisted-pair wire, according to conventional DSL standards.
According to conventional DSL communications, one of the tones, or subchannels, in the downstream communications from CO (or ONU) to CPE is reserved as the “pilot” tone. This pilot tone carries a constant phase fixed frequency sinusoid, which is generated at the CO or ONU from a fixed reference, such as a fixed crystal oscillator. The CPE receives this pilot tone on the specified channel, and uses the pilot tone to adapt its timing to match that of the CO or ONU. Of course, timing synchronization is essential to accurate demodulation of the DMT signal, as will now be described relative to FIG. 2a. 
In the exemplary plot of FIG. 2a in the complex plane, the true representation of an exemplary pilot tone signal is shown as point 2, at a phase angle of 45° on the unit amplitude circle. If the timing relationship between the transmitting and receiving modems 10, 20 (i.e., between the CO or ONU modem and the CPE modem) is perfectly synchronized, receiving modem 20 will sense the pilot signal at exactly this 45° phase angle. However, if receiving modem 20 has some timing error relative to transmitting modem 10, the demodulated pilot signal will exhibit a different phase angle than that of true point 2. In the example of FIG. 2a, point 4 illustrates an example of the location, in the complex plane, of the pilot signal as received by receiving modem 20 in which some timing error is present relative to the timing of the CO or ONU that transmitted the ideal 45° phase angle constant phase pilot signal. The phase error introduced by the timing mismatch between receiving modem 20 and transmitting modem 10 is shown in FIG. 2a as phase angle θ.
Typically, phase error θ is corrected at receiving modem 20 by adjusting the sample timing at its ADC 22. In effect, as shown in FIG. 2a, the phase error θ is rotated down to be a phase difference θ′ relative to zero degrees, and the sample timing of ADC 22 is then adjusted accordingly. FIG. 3 illustrates a conventional data flow in receiving modem 20, including timing error adjustment of this type. In the arrangement of FIG. 3, ADC 22 is shown as including analog filter function 22a and sample/quantize function 22b, as it is sample/quantize function 22b that to which timing adjustment based on the pilot signal is applied.
In this conventional approach, timing error estimate function 33 receives the pilot signal after demodulation by DFT function 27, and compares this pilot signal with a reference signal, which is either a known reference signal or a decoded signal having a high degree of accuracy. Timing error estimate function 33 generates an estimate Θ of the phase difference between the received signal on the pilot subchannel X(k), and the reference signal Xr(k) as:
                    Θ        =                              tan                          -              1                                ⁡                      (                                          Im                ⁡                                  (                                                            X                      ⁡                                              (                        k                        )                                                              ⁢                                                                                  ⁢                                                                  X                        r                        *                                            ⁡                                              (                        k                        )                                                                              )                                                            Re                ⁡                                  (                                                            X                      ⁡                                              (                        k                        )                                                              ⁢                                                                                  ⁢                                                                  X                        r                        *                                            ⁡                                              (                        k                        )                                                                              )                                                      )                                              (        1        )            This timing error estimate Θ is applied to timing error tracking function 35, which combines the current error estimate with previous error estimates to form a current updated estimate of the timing error, and to adjust the timing of sample/quantize function 22b accordingly, in this example. Various conventional approaches in the correction process applied by error tracking function 35 are known, including changing the sampling frequency of sample/quantize function 22b, generating a numerical or signal input to control the sampling timing of sample/quantize function 22b, or adjusting a set of coefficients for an interpolation structure applied in ADC 22, and the like. Regardless of the specific control mechanism, the output of timing error tracking function 35 controls and adjusts the sampling applied by sample/quantize function 22b in ADC 22.
By way of example, a conventional second-order tracking algorithm applied by a conventional timing error tracking function 35 to a numerically controlled oscillator can be considered as:α=bΘ+aΘs  (2a)where α is the value written to the numerically controlled oscillator, where learning factors a and b control the rate of the update, and where Θs is a sum, of phase error estimates Θ, that is updated with each new phase error estimate Θ as:Θs=Θ+Θs  (2b)As such, the numerical value α is adjusted based on a sum of recent phase error estimates Θ, in effectively a second-order manner. Of course, the sum terms in sum Θs can also be temporally weighted to further adjust the adjustment.
It has been observed, according to this invention, that errors in the timing circuitry at receiving modem 20 relative to transmitting modem 10 appear as phase error θ relative to the ideal constant phase pilot signal, as illustrated in FIG. 2a. However, it has also been observed that phase error is also presented to the pilot signal (as well as other signals) by variations in the transmission channel LP itself. For example, time-dependent channel variations can be caused by temperature variations over the span of a day, or from day-to-day, resulting in changes in the propagation characteristics of the copper wire in the twisted-pair itself. These channel variations are reflected in phase rotation of the reference pilot signal Xr(k), as illustrated in FIG. 2b. 
FIG. 2b shows true pilot signal point 2, which is again located on the unit circle at a constant 45° phase angle. Variations in temperature or other parameters regarding communications channel LP cause a phase error in the pilot signal as it is carried over the twisted-pair wire facility, in which case a phase-rotated pilot signal (i.e., assuming receiving modem 20 to be time synchronous with transmitting modem 10) is illustrated at null point 2′ of FIG. 2b. This null point 2′ corresponds to the reference pilot signal Xr(k) of equation (1), as recovered from the received signal. Ideally, the reference pilot signal Xr(k), or null point 2′, would be at the true pilot signal point 2, but for the channel variations that caused phase rotation φ in this pilot signal during transmission. Timing error that is present at receiving modem 20 relative to transmitting modem 10 causes phase error θ as before, but because of the channel variations causing error in the reference signal, the total timing error thus the sum of phase rotation φ and phase error θ. Those skilled in the art will recognize that the phase rotation φ and phase error θ are not necessarily of the same polarity, as these two errors have independent causes relative to one another.
In the example described above relative to FIG. 3, the received pilot signal is extracted after demodulation by DFT function 27, but prior to FEQ 28. As such, the correction applied by timing error estimate function 33 and timing error tracking function 35 will cause the timing recovery function, and the corrections applied to ADC 22, to track both timing variations (phase error θ) and also channel variations (phase rotation φ).
However, as shown in FIG. 3, channel variations (phase rotation φ) may be addressed by updating the coefficients of FEQ function 28, based on a comparison of the decoded pilot signal to its ideal signal value, for example QAM point (+1, +1). In this regard, FEQ update function 31 has inputs receiving the output of FEQ function 28 itself and the output of constellation decoder 29. In its operation, FEQ update function 31 determines the error between the estimated constellation at the output of FEQ function 28 and the decoded constellation from constellation decoder 29, and updates the coefficients of FEQ function 28 accordingly. This adapting would, in theory, undo the time varying phase rotation caused by variations in the channel properties over time. However, if timing error were also based on the pilot signal as extracted after FEQ function 28, a “race” condition between the FEQ update of function 31 and the timing error tracking of function 35 could result, in which case either or both of the FEQ update and timing error tracking and correction functions could be unstable.
It is axiomatic that improvements in the accuracy of the phase error estimates can translate into better phase error tracking over time, and thus better timing performance. In this regard, it has been observed, according to this invention, that a higher frequency pilot channel would be preferred to facilitate observation of timing error effects, and that a pilot channel with a high signal-to-noise ratio (SNR) would be preferred for reduced corruption of the phase error estimate by noise.
As such, it has also been observed, according to this invention, that the signal-to-noise ratio of the timing error correction could be greatly improved through the use of multiple pilot signals, at different frequencies. Summation of the received pilot signals over the multiple channels would reinforce the coherent pilot signal, with the non-coherent random noise tending to cancel out, thus providing improved SNR for the detected pilot signal. This approach would be effective in detecting phase error due to timing variations at the receiving modem, relative to the transmitting modem. However, it has been further observed, in connection with this invention, that channel variations are typically frequency dependent, such that the phase rotation Φ due to channel variations will differ from channel to channel, and will vary over time.
This effect is illustrated in FIG. 2c, by way of example. In this case, pilot signal point 21 corresponds to the phase-rotated reference pilot signal for a first channel, which due to channel variations has a phase rotation φ1 of a positive polarity relative to the true QAM point 2. Because of timing errors at receiving modem 20, as before, received pilot signal point 41 has a phase error θ1, also of positive polarity, relative to the phase-rotated reference pilot signal at point 21. The total phase error for this first subchannel is thus the sum of the phase rotation φ1 and the phase error θ1, as before. In this example, a pilot signal of the same ideal phase (i.e., also having a true QAM point 2) as the first subchannel is transmitted over a second subchannel. Channel variations on this second subchannel, such channel variations being frequency dependent as mentioned above, have resulted in a phase rotation φ2 that is of negative polarity and a different magnitude than the phase rotation φ1 on the first channel, as evidenced by phase-rotated reference pilot signal point 22, relative to which this subchannel also has a phase error θ2. The magnitude of phase error θ1, θ2, will generally be different on these different subchannels, with higher error on higher frequency subchannels, while the polarity or direction of the phase error θ1, θ2 at receiving modem 20 is substantially independent of frequency. However, because of the different phase rotations φ1, φ2 on these subchannels, the total phase errors of the two pilot signals on the two subchannels are quite different from one another. Timing correction by summing weighted versions of these two pilot signals is necessarily inaccurate.